package com.amtf.datafile3;

import java.util.List;

public interface DataRowAccessor {

	public void close();

	public String getName();

	public void setName(String name);

	public DataTableDefinition getDefinition();

	public void setDefinition(DataTableDefinition definition);

	public int currentReadingLine();

	public int currentWritenLine();

	// public int totalLineNumber() throws IOException, DataException;

	public DataRecord readFirstLine() throws DataException;

	public DataRecord readNextLine() throws DataException;

	public List<DataRecord> readFirstLines(int readCount) throws DataException;

	public List<DataRecord> readNextLines(int readCount) throws DataException;

	public void writeLine(String[] line) throws DataException;

	public void writeLine(Object[] line) throws DataException;

	public void writeLine(DataRecord line) throws DataException;

	public void writeLines(List<DataRecord> lines) throws DataException;

	public void writeAll(DataRowAccessor tableSet) throws DataException;
}
